package com.lz.c;

import java.util.Arrays;
import java.util.Random;

/**
 * @ClassName Demo27
 * @Description 生成一个顺序数组, 将这个数组的元素打乱顺序后输出
 * @Author 2214361854
 * @Date 2022/5/27 14:46
 * @Version 1.0
 */
public class Demo27 {
    public static void main(String[] args) {
        int[] arr = generateArray(5);
        System.out.println(Arrays.toString(arr));
        shuffle(arr);
    }

    /**
     * 生成数组
     * @param n
     * @return
     */
    private static int[] generateArray(int n) {
        int[] arr = new int[n];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = i + 1;
        }
        return arr;
    }

    /**
     * 随机打乱数组
     * @param arr
     */
    private static void shuffle(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            int k = arr[i];
            //随机位数
            int z = new Random().nextInt(arr.length);
            //交换
            arr[i] = arr[z];
            arr[z] = k;
        }
        System.out.println(Arrays.toString(arr));
    }
}
